/*
 * =====================================================================================
 *
 *       Filename:  CorpNode.h
 *
 *    Description:
 *
 *        Version:  1.0
 *        Created:  01/06/2022 09:38:42 AM
 *       Revision:  none
 *       Compiler:  gcc
 *
 *         Author:  first_name last_name (fl), fl@my-company.com
 *        Company:  my-company
 *
 * =====================================================================================
 */

#pragma once
#include <iostream>
using std::string;
class CCorpNode {
  public:
    CCorpNode();
    CCorpNode(string _name, string _pos, int _salary);
    virtual ~ CCorpNode(void);
    virtual string GetInfo();
    void SetParent(CCorpNode* _pParent);
    CCorpNode* GetParent();
    virtual bool IsLeaf() = 0;
  private:
    string m_name;
    string m_position;
    int m_salary;
  protected:
    bool m_isLeaf;
    CCorpNode* m_pParent;
};
